#pragma once

#include "Move.h"
#include "Camera.h"

enum AnimationStatus{UP,MOVE,DOWN,WAIT_REMOVE,WAIT_CAPTURE};

struct AnimationData{
	Move move;
	float xi;
	float yi;
	float zi;
	float xf;
	float yf;
	float zf;
	float delta_x;
	float delta_y;
	float delta_z;
	int move_x;
	int move_z;
};

enum RemoveAnimationStatus{REMOVE_UP,REMOVE_MOVE,REMOVE_DOWN};

struct RemoveAnimation{
	PlayerType player;
	int n_checkers;
	float x;
	float y;
	float z;
	float xf;
	float yf;
	float zf;
	float delta_x;
	float delta_y;
	float delta_z;
	int move_x;
	int move_z;
};

enum CapturedAnimationStatus{CAPTURED_BACK,CAPTURED_WAIT,CAPTURED_NO_MORE};

struct CapturedAnimation{
	PlayerType player;
	int n_checkers;
	float x;
	float z;
	float zf;
	float delta_z;
};

enum AnimationCameraStatus{NOT_ANIMATE,ANIMATE};

struct AnimationCamera{
	float ang;
	float current_ang;
	int ti;
	int tf;
	int tf_minus_ti;
	Cam final_cam;
};